package org.zn.note.common.log;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

/**
 * SLF4J (org.slf4j:slf4j-api)
 * 一般都用SLF4J，日志门面。阿里规范也要求，不能直接使用具体日志实现，要用SLF4J API。
 * <p>
 * SLF4J支持的具体日志实现：
 * SimpleLogger：SLF4J自己实现的，org.slf4j.impl.SimpleLogger，引入 org.slf4j:slf4j-simple
 * logback：原生实现了SLF4J接口，引入logback本身就行 ch.qos.logback:logback-classic
 * java.util.logging：SLF4J提供了适配器 org.slf4j.impl.JDK14LoggerAdapter（jdk1.4 logging）
 * log4j(log4j2)：SLF4J提供了适配器 org.slf4j.impl.Log4jLoggerAdapter
 *                不能直接引入log4j，要引入
 * <p>
 * SLF4J会自己在classpath下找日志实现类
 * 1、如果没找到，报错
 * 2、如果找到多个，会给警告，然后随机用一个
 * 最好在classpath下只有一个日志实现，如果有多个依赖，排除没用的（maven <exclusions>）。
 */
public class JavaLog {

    static final Logger logger = LoggerFactory.getLogger(JavaLog.class);

    public static void main(String[] args) {
        logger.info("Hello World");
    }
}
